<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //1. 函数定义
        function myfn() {
            console.log('定义的函数被调用');
        }
        // 函数调用
        myfn()

        //2. 函数表达式
        var myfn2 = function () {
            console.log('函数表达式被调用');
        }
        myfn2()

        //3. 有参函数
        var add = function (a, b) {
            return a + b;
        }
        console.log('add函数执行的结果是：'+add(1,2));

        //4. 当我们不确定函数的参数有多少个时，可以使用arguments来获取
        console.log(myfn2.arguments);
        console.log(add.arguments);

        //5. 嵌套函数 与高级编程语言不同的是，JS允许函数的定义存在于另一个函数定义的内部。
        function outfn(){
            function innerfn(){
                console.log("我是内层函数");
            }
            innerfn()
            console.log("我是外层函数");
        }
        outfn()
    </script>
</body>

</html>